Field of the Invention
The present invention relates to an apparatus and method of data capture.
Description of the Prior Art
The “background” description provided herein is for the purpose of generally presenting the context of the disclosure. Work of the presently named inventors, to the extent it is described in this background section, as well as aspects of the description which may not otherwise qualify as prior art at the time of filing, are neither expressly or impliedly admitted as prior art against the present invention.
Conventional methods exist to archive the complete state of a computer system. An early example of such a method was the hardware based transfer of the complete memory of a computer to a file. An example of this approach is the SNA snapshot format, used for 8 bit computers such as the Sinclair Spectrum® and Amstrad CPC®. The hardware-based duplication of the entire memory from such old machines is typically used to transfer their functionality to an emulated version of the machine on a modern computer.
A more recent example of this approach is the ability to run a virtual PC on a server. Again a snapshot of the state of such a virtual system can be taken by copying the system memory of the virtual machine to permanent storage. The virtual machine can then be shut down, and resumed when needed using the stored system memory.
This in turn is essentially a virtualised implementation of the hibernation mode used for example by laptops running Microsoft Windows®, in which all current system memory is copied to the laptop hard disk and the laptop then shuts down. Upon being restarted, the system memory is restored back from the hard disk so that the computer can resume from its previous state.
In each case, the entire memory of the system is captured, thereby including the states of the operating system (OS) and any applications running in the OS environment, for the purposes of suspending the whole machine for an indefinite period before restoring it from scratch following a real or virtual power-on action.
However, there are circumstances in which, rather than suspending the state of the whole system, and restoring the whole system, it would be preferable to copy a state without interrupting the system, so that the OS and applications can continue to operate but it would be possible to restore the copied state later on.
Microsoft Windows® provides the facility to set so-called restore points, which are archives of the settings and software for certain key functions of Windows®. Restore points are typically created before new software is installed that directly interacts with the Windows® system and/or host hardware, such as driver software and other system files. This allows the new software installation to be undone by restoring the previous software and its settings in Windows® if there is a problem with the new software.
However, it will be appreciated that while restore points allow for old programs to be recovered and re-integrated into the operating system, they are not intended to save the current running state of a program currently running on the OS.
Nevertheless, there are circumstances in which it would be desirable to be able to save the current running state of a computer program for subsequent recovery, such as when developing new software that may crash or behave unexpectedly.
The present invention aims to mitigate this problem.